import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);

        list.remove(1);
    }

    List<List<Integer>> ret = new ArrayList<>();
    ArrayList<Integer> path = new ArrayList<>();

    public void dfs(int[] nums,int i){
        if(i == nums.length){
            ret.add(new ArrayList<>(path));
            return;
        }

        dfs(nums,i+1);
        path.add(nums[i]);
        dfs(nums,i+1);
        path.remove(i);

    }
}
